package com.heatup.apt.common.dao;

import com.baomidou.mybatisplus.mapper.AutoMapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.heatup.apt.model.company.CompanyInfo;
import com.heatup.apt.model.order.OrderCompanyDetailInfo;
import org.springframework.stereotype.Component;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * CompanyInfo 表数据库控制层接口
 */
@Component
public interface CompanyInfoMapper extends AutoMapper<CompanyInfo> {

    /**
     * 查询企业列表
     *
     * @param queryMap 参数
     * @return
     */
    List<CompanyInfo> selectCompanyList(Page<CompanyInfo> companyInfoPage, Map<String, Object> queryMap);

    /**
     * 定时任务 查询所有状态有效企业下的状态有效的员工列表
     *
     */
    List<CompanyInfo> queryCompanyInfoList();

    /**
     * 查询企业余额
     *
     * @param companyId 企业Id
     * @return 企业余额
     */
    BigDecimal selectCompanyAmountById(Long companyId);

    /**
     * 查询企业指定年月订单流水
     *
     * @param orderCompanyDetailInfo 企业 ID 年 月
     * @return 企业指定年月订单流水
     */
    List<OrderCompanyDetailInfo> queryOrderDetailList(OrderCompanyDetailInfo orderCompanyDetailInfo);
    
    /**
     * 根据用户查询企业储值卡信息
     * @param userId
     * @return
     */
    CompanyInfo queryCompanyInfoByUser(Integer userId);
}